package com.ruoyi.system.mapper;

import java.util.List;

import com.ruoyi.system.domain.WorkForm;
import com.ruoyi.system.domain.WorkFormUser;
import org.apache.ibatis.annotations.Param;

/**
 * 工单表Mapper接口
 *
 * @author ruoyi
 * @date 2020-04-20
 */
public interface WorkFormMapper {
    /**
     * 查询工单表
     *
     * @param id 工单表ID
     * @return 工单表
     */
    public WorkForm selectWorkFormById(Long id);

    /**
     * 查询工单表列表
     *
     * @param workForm 工单表
     * @return 工单表集合
     */
    public List<WorkForm> selectWorkFormList(WorkForm workForm);

    /**
     * 新增工单表
     *
     * @param workForm 工单表
     * @return 结果
     */
    public int insertWorkForm(WorkForm workForm);

    /**
     * 修改工单表
     *
     * @param workForm 工单表
     * @return 结果
     */
    public int updateWorkForm(WorkForm workForm);

    /**
     * 删除工单表
     *
     * @param id 工单表ID
     * @return 结果
     */
    public int deleteWorkFormById(Long id);

    /**
     * 批量删除工单表
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteWorkFormByIds(String[] ids);

    int insertWorkFormByIds(@Param("ids") Long ids);

    int updataWorkFormById(@Param("id") Long id);

    int updateWorkFormBycheckOk(Long id, Long chckId);

    int updateWorkFormBycheckId(@Param("id") Long id);

    void updateWorkFormByTransId(@Param("id") int id);

    void updateWorkFormByTransIds(WorkFormUser workFormUser);

    int updateWorkFormByReturnId(@Param("id") Long id);

    String selectWorkByTransId(@Param("id") Long id);

    int updateWorkFormBycheckff(@Param("id") int id, @Param("userId") int userId);

    Long insertWorkFormByForm(WorkForm workForm);

    void updateWorkFormByWork(@Param("username") Long username, @Param("complete") String complete);

    void updateWorkFormUserById(@Param("flag") String flag, @Param("id") int id);

    List<WorkFormUser> selectWorkFormUser(@Param("s") String s);

    int selectWorkCheckListByFormId(@Param("f") Long f);

    void deleteWorkFormByFormId(@Param("id") Long id);

    void deleteWorkFormByForm(@Param("id") Long id);
}
